package com.example.demo.config;


import com.example.demo.common.LoginInterceptor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;


/**
 *   需要加上五大类注解,
 *   也需要实现接口 WebMvcConfigurer
 */
@Configuration
public class MyConfig implements WebMvcConfigurer {

    // 属性注入
    @Autowired
    private LoginInterceptor loginInterceptor;

    /**
     * 也需要重写 addInterceptors 方法
     */
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        //WebMvcConfigurer.super.addInterceptors(registry);

        /**
         *  调用方法 registry
         */
        registry.addInterceptor(loginInterceptor)
                .addPathPatterns("/**")  // 一个*表示拦截一级目录，两个*表示拦截所有url
                .excludePathPatterns("/**/login")   // 排除掉的url，也就是不拦截
                .excludePathPatterns("/user/reg");
    }
}
